package com.zhi.service;

import com.zhi.entity.Grade;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * 学院service层
 */
public interface GradeService {

	/**
	 * 获得所有数据
	 * @return
	 */
	public List<Grade> getEntityList();

	/**
	 * 获得所有数据带数据字典值
	 * @return
	 */
	public List<Object[]> getEntityListWithCodeName();

	/**
	 * 获得所有数据带数据字典值并分页
	 * @param pageable
	 * @return
	 */
	public Page<Grade> getEntityListWithCodeName(Pageable pageable);

	/**
	 * 根据id获得
	 * @param gradeId
	 * @return
	 */
	public Grade getOne(String gradeId);

	/**
	 * 根据对象为条件获得list
	 * @param grade
	 * @return
	 */
	public List<Grade> findAll(Grade grade);

	/**
	 * 根据id集合获得list
	 * @param ids
	 * @return
	 */
	public List<Grade> findAllById(List<String> ids);

	/**
	 * 保存对象,并返回保存到对象，主要获取id
	 * @param grade
	 */
	public void save(Grade grade);

	/**
	 * 编辑对象
	 * @param grade
	 */
	public void edit(Grade grade);

	/**
	 * 删除对象
	 * @param gradeId
	 */
	public void delete(String gradeId);

	/**
	 * 根据对象获取数量
	 * @param grade
	 * @return
	 */
	public Integer count(Grade grade);

	
}
